package Object;

/**
 * 测试常用的object中定义的方法
 * toString与equals
 */
public class Test {
    public static void main(String[] args) {
        Point p=new Point(1,2);
        /**
         *Object中第一个常被使用的方法为:
         *String toString()
         *该方法的作用是将当前对象转换为一个字符串。
         *Object默认实现返回的字符串格式:
         *包名.类名@地址信息
         *
         *开发中我们经常使用System.out.println(Object o)方法将一个对象输出到
         *控制台，而该方法就是调用传入的对象的toString方法现将其转换为一个字符串后
         *再输出到控制台。因此如果输出的对象没有重写toString方法，则输出的就是地址
         *信息，对于开发中的帮助不大。
         *
         * 在进行字符串链接操作时，也会将非String类型的对象先调用toString方法
         * 将返回的字符串进行链接
         */
        System.out.println("point:"+p);
        String line="这个对象内容为:"+p;
        System.out.println(line);

        /**
         * Point是引用类型，因此p和p2变量保存的是对象的地址，由于p和p2指向两个不同的对象所以地址不同
         */
        Point p2=new Point(1,2);
        System.out.println(p==p2);
        /**
         * object提供了方法
         * boolean equals(Object o)
         * 用来比较两个对象是否相同，若当前对象与参数o对象的内容相同时返回true;
         * 注意：该方法若使用就应当被派生类重写，因为Object中的实现就是用“==”比较的
         * 不重写则并非真正比较内容
         */



    }
}
